package com.gxa.modules.sys.controller;


import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.gxa.common.utils.PageUtils;
import com.gxa.common.utils.Result;
import com.gxa.modules.sys.dto.SeatDto;
import com.gxa.modules.sys.entity.Seat;
import com.gxa.modules.sys.service.SeatService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@Api(tags = "座位管理接口")
@RestController
public
class SeatController {

    @Autowired
    private
    SeatService seatService;
    @ApiOperation(value = "点击座位管理，获取座位数据，条件查询")
    @PostMapping("/seat/queryall")
    public
    Result queryAll(@RequestBody SeatDto seatDto) {

        try {
            Page<Map<String, Object>> pageHelper = PageHelper.startPage(seatDto.getPage(), seatDto.getLimit());
            List<SeatDto> seatDtos = seatService.queryAll(seatDto);
            Map<String, Object> map = new HashMap();
            map.put("Seats", seatDtos);
            map.put("count", pageHelper.getTotal());
            return new Result().ok(map);
        } catch (Exception e) {
            e.printStackTrace();
            return new Result().error("查询数据失败");

        }


    }


    @ApiOperation(value = "点击开灯，批量开灯，关灯，批量关灯")
    @PutMapping("/seat/updatelight")
    public
    Result updateLight(@RequestBody List<Seat> seats) {


        try {
            seatService.updateLight(seats);
            return new Result<>().ok();
        } catch (Exception e) {
            e.printStackTrace();
            return new Result<>().error("开灯失败");
        }
    }

}


//    @ApiOperation(value = "点击开灯，批量开灯，需要发送当前id数组")
//    @PutMapping("/seat/updateOpen01")
//    public
//    Result updateOpen01( Integer[] ids) {
//
//        seatService.updateOpen(ids);
//
//
//        return new Result().ok();
//    }




//    @ApiOperation(value = "点击关灯，批量关灯，需要发送当前id数组")
//    @PutMapping("/seat/updateClose")
//    public
//    Result updateStatus(@RequestBody List<Seat> ids) {
//
//
//        try{
//            seatService.updateClose(ids);
//            return new Result<>().ok();}
//        catch (Exception e){
//            e.printStackTrace();
//            return new Result<>().error("关灯失败");
//        }
//    }
//    }




//    @ApiOperation(value = "点击批量开灯，需要发送当前id")
//    @PutMapping("/seat/updateLotOpen")
//    public
//    Result updateLotOpen() {
//
//        List list =new ArrayList();
//        list.add("可以传");
//        Map<String,Object> map =new HashMap<>();
//        map.put("list",list);
//
//
//
//        return new Result();
//    }
//
//    @ApiOperation(value = "点击批量开灯，需要发送id")
//    @PutMapping("/seat/updateLotClose")
//    public
//    Result updateLotClose() {
//
//        List list =new ArrayList();
//        list.add("可以传");
//        Map<String,Object> map =new HashMap<>();
//        map.put("list",list);
//
//
//
//        return new Result();
//    }



